Reports for WPF
サブレポートを使用したマスター/詳細レポートの作成
C1Report デザイナの使い方 > C1Report デザイナについて > サブレポートを使用したマスター/詳細レポートの作成

サブレポートは、他のレポート(メインレポート)内のフィールドに含まれる通常のレポートです。通常、サブレポートは、マスター/詳細レポートシナリオでのメインレポートの現在の値に基づく詳細情報を表示するように設計されています。

以下の例では、メインレポートに商品区分が含まれ、[詳細]セクション内のサブレポートに現在の商品区分の商品明細が含まれています。

商品区分および商品テーブルに基づいてマスター/詳細レポートを作成するには、区分別レポート(マスタービュー)と商品レポート(詳細ビュー)を作成する必要があります。

手順1:マスターレポートの作成

  1. C1Report ウィザードを使用して、基本的なレポート定義を作成します
    1. Northwind データベースから商品区分テーブルを選択します(Nwind.mdb は、C:\Users\<ユーザー名>\Documents\ComponentOne Samples\Common フォルダーにあります)。
    2. CategoryName と Description フィールドをレポートに取り込みます。
  2. C1Report デザイナアプリケーションで、〈印刷プレビューを閉じる〉ボタンをクリックしてレポートの編集を開始します。
  3. [ページヘッダー]セクションと[ヘッダー]セクションの Visible プロパティを False に設定します。
  4. [詳細]セクションで、[DescriptionCtl]を選択し、それを直接[CategoryNameCtl]の下に移動します。
  5. プロパティウィンドウを使用して、外観の設定(Font および ForeColor)を変更します。この例では、[グラデーション]フィールドが[詳細]セクションに追加されています。[グラデーション]フィールドについての詳細は、「グラデーションフィールドの追加」を参照してください。
  6. プレビュー〉ボタンを選択すると、区分別レポートは次の画面のように表示されます。

手順2:詳細レポートの作成

  1. C1Report デザイナアプリケーションで、〈新しいレポート〉ボタンをクリックし、C1Report ウィザードを使用して基本的なレポート定義を作成します。

    1. Northwind データベースから、商品テーブルを選択します。

    2. レポートに以下のフィールドを取り込みます。ProductName、QuantityPerUnit、UnitPrice、UnitsInStock、および UnitsOnOrder。
  2. レポートデザイナで、〈印刷プレビューを閉じる〉ボタンをクリックしてレポートの編集を開始します。
    1. [ページヘッダー]セクションと[ヘッダー]セクションの Visible プロパティを False に設定します。

    2. [詳細]セクションで、見出しラベルの揃うようにコントロールを配置します。プロパティウィンドウを使用して、外観の設定を変更します。

手順3:サブレポートフィールドの作成

ここでは、C1Report デザイナアプリケーションには、区分別レポート商品レポートの2つの別個のレポートが存在します。次の手順では、サブレポートを作成します。

  1. デザイナの[レポート]リストから、区分別レポート(マスターレポート)を選択します.
  2. デザインモードで、「デザイン」タブの「フィールド」グループにある〈サブレポートの追加〉ボタンをクリックし、ドロップダウンメニューから商品レポートを選択します。

  3. レポートの[詳細]セクションで、マウスポインタをクリックおよびドラッグして、サブレポートのフィールドを作成します。

手順4:マスターレポートへのサブレポートのリンク

マスター/詳細レポートの関係は、サブレポートフィールドのText プロパティによって制御されます。このプロパティには、サブレポートのデータソースに適用できるフィルタ条件を評価する式が含まれています。

レポートデザイナでは、この数式を自動的にビルドできます。以下の手順を実行します。

  1. サブレポートフィールドを右クリックし、メニューから[サブレポートのリンク]を選択します。

  2. リンクするフィールドを選択できるダイアログボックスが表示されます。
  3. 選択を行い、〈OK〉をクリックすると、レポートデザイナは、リンク式をビルドし、それをサブレポートフィールドのText プロパティに割り当てます。この場合、式は次のとおりになります。

    コードのコピー
    "[CategoryID] = '" & [CategoryID] & "'"
    

または、以下の手順を実行して、サブレポートをマスター レポートにリンクさせることもできます。

  1. プロパティウィンドウで、サブレポートフィールドのText プロパティをクリックし、ドロップダウンリストから[スクリプトエディタ]を選択します。

  2. 2.VBScript エディタで、次の式を入力します。

    コードのコピー
    "[CategoryID] = '" & [CategoryID] & "'"
    
  3. OK〉をクリックし、VBScript エディタを閉じて、式をビルドします。
関連トピック